Quickstart: Azure Cognitive Services Translator REST APIs

您所在的位置:网站首页 python get_support Quickstart: Azure Cognitive Services Translator REST APIs

Quickstart: Azure Cognitive Services Translator REST APIs

2023-05-27 12:10| 来源: 网络整理| 查看: 265

Quickstart: Azure Cognitive Services Translator REST APIs Article 05/12/2023

Try the latest version of Azure Translator. In this quickstart, get started using the Translator service to translate text using a programming language of your choice or the REST API. For this project, we recommend using the free pricing tier (F0), while you're learning the technology, and later upgrading to a paid tier for production.

Prerequisites

You need an active Azure subscription. If you don't have an Azure subscription, you can create one for free

Once you have your Azure subscription, create a Translator resource in the Azure portal.

After your resource deploys, select Go to resource and retrieve your key and endpoint.

You need the key and endpoint from the resource to connect your application to the Translator service. You paste your key and endpoint into the code later in the quickstart. You can find these values on the Azure portal Keys and Endpoint page:

Note

For this quickstart it is recommended that you use a Translator text single-service global resource. With a single-service global resource you'll include one authorization header (Ocp-Apim-Subscription-key) with the REST API request. The value for Ocp-Apim-Subscription-key is your Azure secret key for your Translator Text subscription. If you choose to use the multi-service Cognitive Services or regional Translator resource, two authentication headers will be required: (Ocp-Api-Subscription-Key and Ocp-Apim-Subscription-Region). The value for Ocp-Apim-Subscription-Region is the region associated with your subscription. For more information on how to use the Ocp-Apim-Subscription-Region header, see Text Translator REST API headers. Headers

To call the Translator service via the REST API, you need to include the following headers with each request. Don't worry, we include the headers for you in the sample code for each programming language.

For more information on Translator authentication options, see the Translator v3 reference guide.

Header Value Condition Ocp-Apim-Subscription-Key Your Translator service key from the Azure portal. • Required Ocp-Apim-Subscription-Region The region where your resource was created. • Required when using a multi-service Cognitive Services or regional (geographic) resource like West US.• Optional when using a single-service global Translator Resource. Content-Type The content type of the payload. The accepted value is application/json or . • Required Content-Length The length of the request body. • Optional

Important

Remember to remove the key from your code when you're done, and never post it publicly. For production, use a secure way of storing and accessing your credentials like Azure Key Vault. For more information, see the Cognitive Services security article.

Translate text

The core operation of the Translator service is translating text. In this quickstart, you build a request using a programming language of your choice that takes a single source (from) and provides two outputs (to). Then we review some parameters that can be used to adjust both the request and the response.

For detailed information regarding Azure Translator Service request limits, see Text translation request limits.

C#: Visual Studio Go Java: Gradle JavaScript: Node.js Python Set up your Visual Studio project

Make sure you have the current version of Visual Studio IDE.

Tip

If you're new to Visual Studio, try the Introduction to Visual Studio Learn module.

Open Visual Studio.

On the Start page, choose Create a new project.

On the Create a new project page, enter console in the search box. Choose the Console Application template, then choose Next.

In the Configure your new project dialog window, enter translator_quickstart in the Project name box. Leave the "Place solution and project in the same directory" checkbox unchecked and select Next.

In the Additional information dialog window, make sure .NET 6.0 (Long-term support) is selected. Leave the "Don't use top-level statements" checkbox unchecked and select Create.

Install the Newtonsoft.json package with NuGet

Right-click on your translator_quickstart project and select Manage NuGet Packages... .

Select the Browse tab and type Newtonsoft.json.

Select install from the right package manager window to add the package to your project.

Build your C# application

Note

Starting with .NET 6, new projects using the console template generate a new program style that differs from previous versions. The new output uses recent C# features that simplify the code you need to write. When you use the newer version, you only need to write the body of the Main method. You don't need to include top-level statements, global using directives, or implicit using directives. For more information, see New C# templates generate top-level statements.

Open the Program.cs file.

Delete the pre-existing code, including the line Console.Writeline("Hello World!"). Copy and paste the code sample into your application's Program.cs file. Make sure you update the key variable with the value from your Azure portal Translator instance:

using System.Text; using Newtonsoft.Json; class Program { private static readonly string key = ""; private static readonly string endpoint = "https://api.cognitive.microsofttranslator.com"; // location, also known as region. // required if you're using a multi-service or regional (not global) resource. It can be found in the Azure portal on the Keys and Endpoint page. private static readonly string location = ""; static async Task Main(string[] args) { // Input and output languages are defined as parameters. string route = "/translate?api-version=3.0&from=en&to=fr&to=zu"; string textToTranslate = "I would really like to drive your car around the block a few times!"; object[] body = new object[] { new { Text = textToTranslate } }; var requestBody = JsonConvert.SerializeObject(body); using (var client = new HttpClient()) using (var request = new HttpRequestMessage()) { // Build the request. request.Method = HttpMethod.Post; request.RequestUri = new Uri(endpoint + route); request.Content = new StringContent(requestBody, Encoding.UTF8, "application/json"); request.Headers.Add("Ocp-Apim-Subscription-Key", key); // location required if you're using a multi-service or regional (not global) resource. request.Headers.Add("Ocp-Apim-Subscription-Region", location); // Send the request and get response. HttpResponseMessage response = await client.SendAsync(request).ConfigureAwait(false); // Read response as a string. string result = await response.Content.ReadAsStringAsync(); Console.WriteLine(result); } } } Run your C# application

Once you've added a code sample to your application, choose the green start button next to formRecognizer_quickstart to build and run your program, or press F5.

Translation output:

After a successful call, you should see the following response:

[ { "detectedLanguage": { "language": "en", "score": 1.0 }, "translations": [ { "text": "J'aimerais vraiment conduire votre voiture autour du pâté de maisons plusieurs fois!", "to": "fr" }, { "text": "Ngingathanda ngempela ukushayela imoto yakho endaweni evimbelayo izikhathi ezimbalwa!", "to": "zu" } ] } ] Set up your Go environment

You can use any text editor to write Go applications. We recommend using the latest version of Visual Studio Code and the Go extension.

Tip

If you're new to Go, try the Get started with Go Learn module.

If you haven't done so already, download and install Go.

Download the Go version for your operating system.

Once the download is complete, run the installer.

Open a command prompt and enter the following to confirm Go was installed:

go version Build your Go application

In a console window (such as cmd, PowerShell, or Bash), create a new directory for your app called translator-app, and navigate to it.

Create a new GO file named translation.go from the translator-app directory.

Copy and paste the provided code sample into your translation.go file. Make sure you update the key variable with the value from your Azure portal Translator instance:

package main import ( "bytes" "encoding/json" "fmt" "log" "net/http" "net/url" ) func main() { key := "" endpoint := "https://api.cognitive.microsofttranslator.com/" uri := endpoint + "/translate?api-version=3.0" // location, also known as region. // required if you're using a multi-service or regional (not global) resource. It can be found in the Azure portal on the Keys and Endpoint page. location := "" // Build the request URL. See: https://go.dev/pkg/net/url/#example_URL_Parse u, _ := url.Parse(uri) q := u.Query() q.Add("from", "en") q.Add("to", "fr") q.Add("to", "zu") u.RawQuery = q.Encode() // Create an anonymous struct for your request body and encode it to JSON body := []struct { Text string }{ {Text: "I would really like to drive your car around the block a few times."}, } b, _ := json.Marshal(body) // Build the HTTP POST request req, err := http.NewRequest("POST", u.String(), bytes.NewBuffer(b)) if err != nil { log.Fatal(err) } // Add required headers to the request req.Header.Add("Ocp-Apim-Subscription-Key", key) // location required if you're using a multi-service or regional (not global) resource. req.Header.Add("Ocp-Apim-Subscription-Region", location) req.Header.Add("Content-Type", "application/json") // Call the Translator API res, err := http.DefaultClient.Do(req) if err != nil { log.Fatal(err) } // Decode the JSON response var result interface{} if err := json.NewDecoder(res.Body).Decode(&result); err != nil { log.Fatal(err) } // Format and print the response to terminal prettyJSON, _ := json.MarshalIndent(result, "", " ") fmt.Printf("%s\n", prettyJSON) } Run your Go application

Once you've added a code sample to your application, your Go program can be executed in a command or terminal prompt. Make sure your prompt's path is set to the translator-app folder and use the following command:

go run translation.go

Translation output:

After a successful call, you should see the following response:

[ { "detectedLanguage": { "language": "en", "score": 1.0 }, "translations": [ { "text": "J'aimerais vraiment conduire votre voiture autour du pâté de maisons plusieurs fois!", "to": "fr" }, { "text": "Ngingathanda ngempela ukushayela imoto yakho endaweni evimbelayo izikhathi ezimbalwa!", "to": "zu" } ] } ] Set up your Java environment

You should have the latest version of Visual Studio Code or your preferred IDE. See Java in Visual Studio Code.

Tip

Visual Studio Code offers a Coding Pack for Java for Windows and macOS.The coding pack is a bundle of VS Code, the Java Development Kit (JDK), and a collection of suggested extensions by Microsoft. The Coding Pack can also be used to fix an existing development environment. If you are using VS Code and the Coding Pack For Java, install the Gradle for Java extension.

If you aren't using VS Code, make sure you have the following installed in your development environment:

A Java Development Kit (OpenJDK) version 8 or later.

Gradle, version 6.8 or later.

Create a new Gradle project

In console window (such as cmd, PowerShell, or Bash), create a new directory for your app called translator-text-app, and navigate to it.

mkdir translator-text-app && translator-text-app mkdir translator-text-app; cd translator-text-app

Run the gradle init command from the translator-text-app directory. This command creates essential build files for Gradle, including build.gradle.kts, which is used at runtime to create and configure your application.

gradle init --type basic

When prompted to choose a DSL, select Kotlin.

Accept the default project name (translator-text-app) by selecting Return or Enter.

Update build.gradle.kts with the following code:

plugins { java application } application { mainClass.set("TranslatorText") } repositories { mavenCentral() } dependencies { implementation("com.squareup.okhttp3:okhttp:4.10.0") implementation("com.google.code.gson:gson:2.9.0") } Create your Java Application

From the translator-text-app directory, run the following command:

mkdir -p src/main/java

You create the following directory structure:

Navigate to the java directory and create a file named TranslatorText.java.

Tip

You can create a new file using PowerShell.

Open a PowerShell window in your project directory by holding down the Shift key and right-clicking the folder.

Type the following command New-Item TranslatorText.java.

You can also create a new file in your IDE named TranslatorText.java and save it to the java directory.

Open the TranslatorText.java file in your IDE and copy then paste the following code sample into your application. Make sure you update the key with one of the key values from your Azure portal Translator instance:

import java.io.IOException; import com.google.gson.*; import okhttp3.MediaType; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.RequestBody; import okhttp3.Response; public class TranslatorText { private static String key = "


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3